﻿using System;
using System.Collections.Generic;
using Meqs.Entity;
using Meqs.Entity.Views;

namespace Meqs.Logic.Interface
{
    public interface IMoralityPersonCatchLogic : ICommonLogic<MoralityPersonCatch, int>
    {
        /// <summary>
        /// 插入记录
        /// </summary>
        /// <param name="mpc"></param>
        /// <param name="schoolMark"></param>
        /// <returns></returns>
        int InsertMoralityPersonCatch(MoralityPersonCatch mpc, string schoolMark);

        /// <summary>
        /// 删除缓存表中对应单据及学生的记录
        /// </summary>
        /// <param name="studentID"></param>
        /// <param name="recordID"></param>
        /// <param name="schoolMark"></param>
        /// <returns></returns>
        int DeleteMoralityPersonCatch(int studentID, int recordID, string schoolMark);

        /// <summary>
        /// 查找学期内的指定班级(年级)德育分数
        /// </summary>
        IList<MoralityScoreInTermView> FindMoralityScoreInTerm(String schoolMark, int schoolYear, int term, int? grade, int? classId);

        /// <summary>
        /// 查找学生的德育成绩历史
        /// </summary>
        IList<StudentMoralityScoreView> GetMoralityHistoryReport(String schoolMark, int strID);

        IList<StudentMoralityScoreExView> GetMoralityHistoryReportEx(String schoolMark, int strID);

        IList<MoralityPersonCatch> getCatchInfo(int ClsID,int Year,int Month,int Day,int  SchoolYear,int  Term,String  SchoolMark);
    }
}